<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <title>constructor构造方法和封装对象</title>
    <script>
        class Person{
            //私有化数据
            #name
            #age
            #address="花果山"
            //提供构造方法，使批量创建对象简单
            constructor(name,age){
                this.#name=name
                this.#age=age
            }
            //提供setter和getter方法让外界能够访问、修改数据
            get name(){
                debugger
                return this.#name
            }
            set name(name){
                this.#name=name
            }
            
            /*第一种方法更简单,可以直接p1.name来访问
            getName(){
                return this.#name
            }
            setName(name){
                this.#name = name
            }
            sayHello(){
                console.log("hi");
            }
            */
        }

        const p1 = new Person("Anna",18)
        debugger
        p1.name
    </script>
</head>
<body>
    
</body>
</html>